Durch diese Entwurfsmuster wird die Schnittstelle der unterschiedlichen Maschinentypen zu einer einheitlichen Schnittstelle konvertiert. Dadurch kann die Ablaufsteuerung immer über die gleiche Schnittstelle die unterschiedlichen Maschinentypen steuern.
Zur Bearbeitung von den Werkstücken können Maschinen mit unterschiedlichen Steuerungen eingesetzt werden, z.B. CNC-Steuerungen oder SPS-Steuerungen. Wenn die Ablaufsteuerung direkt auf die Schnittstelle einer Maschine zugreift, gibt es Probleme bei späteren Änderungen. In diesem Fall muß die Ablaufsteuerung an mehreren Stellen geändert werden. Um dies zu vermeiden, wird die Klasse Machining eingeführt, über die Schnittstelle dieser Klasse ist dann ein einheitlicher Zugriff auf unterschiedliche Maschinen möglich.
Es wird das Adapter-Muster verwendet, weil die Maschinen in der Fertigungszelle für unterschiedliche Aufgaben ( Bearbeitung, Transport und Handhabung ) verwendet werden können. Die Schnittstelle der Maschinen wäre zu groß, wenn alle Aufgaben mit einer Schnittstelle gelöst werden sollen. Deshalb werden mehrere Adapter-Muster verwendet, so daß für jede Aufgabe eine Schnittstelle vorhanden ist.
Es wird das Objekt-Adapter-Muster verwendet, damit die Anpassung für viele unterschiedliche Maschinen über eine Elternklasse ( z.B. CNC_Maschine ) möglich ist.
Es wurde der Adapter mit Objektkomposition verwendet. Damit ist es möglich, daß eine von Machining abgeleitete Adapterklasse (z.B. CNC Machining) mit unterschiedlichen Maschinen zusammen arbeiten kann. Denn sie spricht die Schnittstelle von CNC-Machine an und über diese Schnittstelle werden auch die von CNC-Machine abgeleiteten Klassen (z.B. TraubTNS60) erreicht.
Durch die Objektkomposition ist es im Gegensatz zum Adapter mit Mehrfachvererbung schwieriger die Zustände der Adaptee-Klasse (z.B. TraubTNS60) zu verändern.